numpy学习 您所在的位置:网站首页 python numpy array 转置 numpy学习

numpy学习

2024-02-23 00:12| 来源: 网络整理| 查看: 265

在numpy的使用过程中,常常会用到数组的转置,从二维数组角度来讲,是将以对角线的数据进行中心对称的转换,但是在维数组中,并不是简单的这种方式。 下面来介绍一下数组的转置应该是如何理解的: 在众多教程和视频当中,绝大部分都是以二维数组作为例子,通过讲0轴1轴,中心对称的概念来解释。 但是在个人理解中,这样反而会加大了初学者的理解难度,因此在以后可能要面对的是多维数组,不仅仅是二维数组,而且容易将思维固化。那么,从本质上讲一下转置到底是什么。 首先用几行代码和结果展示一下转置:

a = np.arange(120).reshape(2,3,4,5) print('a的shape:',a.shape) print('a转置后的shape:',a.T.shape) >>>a的shape: (2, 3, 4, 5) >>>a转置后的shape: (5, 4, 3, 2)

由此可以看出,转置实质上就是将shape顺序改变,变为相反的顺序,即维度数据的转换。 在数据方面,也会跟着格式相应的转换,从最小的数据块开始,依次按照新shape取转换。 举例:

a = np.arange(24).reshape(3,2,4,) print(a) print(a.T) >>> [[[ 0 1 2 3] [ 4 5 6 7]] [[ 8 9 10 11] [12 13 14 15]] [[16 17 18 19] [20 21 22 23]]] **************************************************************************************************** [[[ 0 8 16] [ 4 12 20]] [[ 1 9 17] [ 5 13 21]] [[ 2 10 18] [ 6 14 22]] [[ 3 11 19] [ 7 15 23]]]

转置有三种方法: 1.使用"T"方法 2.使用"transpose"方法 3.使用"swapaxes"方法



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有